<template>
  <div>
    <input
      placeholder="输入关键字搜索"
      v-model.trim="doctor"

    />
    <table class="my-table">
      <thead>
        <tr>
          <th>就诊日期</th>
          <th>医生姓名</th>
          <th>诊断结果</th>
          <th>处方信息</th>
          <th>操作</th>
        </tr>
      </thead>
      <tbody>
        <tr v-for="item in records" :key="item.id">
          <td>{{ item.date }}</td>
          <td>{{ item.doctor }}</td>
          <td>{{ item.diagnosis }}</td>
          <td>{{ item.prescription }}</td>
          <td @click="detail(item.doctor)">详情</td>
        </tr>
      </tbody>
    </table>
    <DeTails :visible.sync="isShow" :list="list"></DeTails>
  </div>
</template>

<script>
import DeTails from "./components/DeTails.vue";
export default {
  components: {
    DeTails,
  },
  data() {
    return {
      doctor: "",
      list: [],
      isShow: false,
      records: [],
      records2: [
        {
          date: "2022-01-01",
          doctor: "张三",
          diagnosis: "感冒",
          prescription: "感冒药",
        },
        {
          date: "2022-02-01",
          doctor: "李四",
          diagnosis: "头疼",
          prescription: "止疼药",
        },
        {
          date: "2022-03-01",
          doctor: "王五",
          diagnosis: "腰痛",
          prescription: "止痛贴",
        },
      ],
    };
  },
  methods: {
    detail(name) {
      this.list = this.records.find((item) => item.doctor === name);
      this.isShow = true;
    },
  },
  // 筛选 符合条件的一项数据
  watch: {
    doctor: {
      immediate: true, // 立即执行
      handler(value) {
        this.records = this.records2.filter((item) =>
          item.doctor.includes(value)
        );
      },
    },
  },
};
</script>

<style scoped>
.my-table {
  border-collapse: collapse;
  width: 100%;
}

.my-table td,
.my-table th {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: left;
}

.my-table th {
  background-color: #f2f2f2;
}
</style>